package com.my.strings.reg;

import java.util.Arrays;

/**
 * @author: marshal
 * @date: 2021-11-17 5:17 PM
 *
 * Java 中正则表达式的使用案例
 */
public class RegexUseExample {
    public static void main(String[] args) {

        // 1. 判断
        System.out.println("is ip? " + check("127.0.0.1", RegexConstants.IP_REGEX));
        System.out.println("is natural number? " + check("20", RegexConstants.NATURAL_NUMBER));

        // 2. 分割
        System.out.println(Arrays.toString(split("2021-11-17", "-")));
        // 3. 替换
        System.out.println(replace("你丫是傻叉吗? 我操你大爷的. Fuck you.", RegexConstants.DIRTY_WORD, "*"));

    }

    /**
     *  判断
     *
     * @param s 字符串
     * @param regex 正则表达式
     * @return true/false
     */
    private static boolean  check(String s, String regex) {
        return s.matches(regex);
    }

    /**
     * 分割功能
     *
     * @param s 字符串
     * @param regex 正则表达式
     * @return 字符串数组
     */
    private static String[] split(String s, String regex) {
        return s.split(regex);
    }

    /**
     * 替换功能
     *
     * @param s 字符串
     * @param regex 正则表达式
     * @return 字符串
     */
    private static String replace(String s, String regex, String replaceStr) {
        return s.replaceAll(regex, replaceStr);
    }
}
